package Libs.Dados.Objetos
{
	import mx.collections.ArrayCollection;
	
	[RemoteClass(alias="Neturion.Dados.Titulo")]
	public class Titulo extends Libs.Dados.Objetos.Movimento
	{
		private var _nossoNumero:String;
		private var _ipte:String;
		private var _registroRetorno:int;
		private var _listaPagamentos:ArrayCollection;
		private var _movimentoFinanceiro:Libs.Dados.Objetos.MovimentoFinanceiro;
			
		public function Titulo()
		{
			this._listaPagamentos = new ArrayCollection();
		}
		
		public function get NossoNumero():String
        {
            return this._nossoNumero;
        }

        public function get Ipte():String
        {
            return this._ipte;
        }

        public function get RegistroRetorno():int
        {
            return this._registroRetorno;
        }
		
		public function get ListaPagamentos():ArrayCollection
		{
			return this._listaPagamentos;
		}
		
		public function get MovimentoFinanceiro():Libs.Dados.Objetos.MovimentoFinanceiro
		{
			return this._movimentoFinanceiro;
		}
////////////////////////////////////////////////////////		
		public function set NossoNumero(value:String):void
        {
            this._nossoNumero=value;
        }

        public function set Ipte(value:String):void
        {
            this._ipte=value;
        }

        public function set RegistroRetorno(value:int):void
        {
            this._registroRetorno=value;
        }
		
		public function set ListaPagamentos(value:ArrayCollection):void
		{
			this._listaPagamentos=value;
		}
		
		public function set MovimentoFinanceiro(value:Libs.Dados.Objetos.MovimentoFinanceiro):void
		{
			this._movimentoFinanceiro=value;
		}
///////////////////////////////////////////////////////////
		public function AdicionarPagamentos(pagamento:Libs.Dados.Objetos.Pagamento):void
		{
			pagamento.Titulo=this;
			ListaPagamentos.addItem(pagamento);
		}
		
		public function RemoverPagamentos(pagamento:Libs.Dados.Objetos.Pagamento):void
		{
			var index:int = ListaPagamentos.getItemIndex(pagamento);
			ListaPagamentos.removeItemAt(index);
		}
	}
}